// @APIVersion 1.0.0
// @Title beego Test API
// @Description beego has a very cool tools to autogenerate documents for your API
// @Contact astaxie@gmail.com
// @TermsOfServiceUrl http://beego.me/
// @License Apache 2.0
// @LicenseUrl http://www.apache.org/licenses/LICENSE-2.0.html
package routers

import (
	"SlowAdmin/controllers/admin"
	"SlowAdmin/middleware"
	"github.com/astaxie/beego"
)

func init() {
	beego.InsertFilter("*", beego.BeforeRouter, middleware.CrossDomain)

	beego.SetStaticPath("/", "public")
	beego.SetStaticPath("/storage/upload/", "storage/upload")

	// 后台登录
	beego.Router("/admin/login", &admin.AuthController{}, "*:Login")
	// 获取用户信息
	beego.Router("/admin/user-info", &admin.AuthController{}, "GET:UserInfo")

	// api管理
	beego.Router("/admin/system/api", &admin.ApiController{}, "POST:Store")         // 添加
	beego.Router("/admin/system/api", &admin.ApiController{}, "GET:List")           // 列表
	beego.Router("/admin/system/api/delete", &admin.ApiController{}, "POST:Delete") // 删除
	beego.Router("/admin/system/api/:id", &admin.ApiController{}, "GET:Find")       // 查看
	beego.Router("/admin/system/api", &admin.ApiController{}, "PUT:Update")         // 修改
	beego.Router("/admin/system/api/group", &admin.ApiController{}, "GET:Group")    // 获取分组

	// 菜单管理
	beego.Router("/admin/system/menu", &admin.MenuController{}, "POST:Store")         // 添加
	beego.Router("/admin/system/menu", &admin.MenuController{}, "GET:List")           // 列表
	beego.Router("/admin/system/menu/delete", &admin.MenuController{}, "POST:Delete") // 删除
	beego.Router("/admin/system/menu", &admin.MenuController{}, "PUT:Update")         // 修改
	beego.Router("/admin/system/menu/api", &admin.MenuController{}, "GET:ApiList")    // api选项数据

	// 角色管理
	beego.Router("/admin/system/role", &admin.RoleController{}, "POST:Store")         // 添加
	beego.Router("/admin/system/role", &admin.RoleController{}, "GET:List")           // 列表
	beego.Router("/admin/system/role/delete", &admin.RoleController{}, "POST:Delete") // 删除
	beego.Router("/admin/system/role", &admin.RoleController{}, "PUT:Update")         // 修改
	beego.Router("/admin/system/role/:id", &admin.RoleController{}, "GET:Find")       // 查看

	// 管理员管理
	beego.Router("/admin/system/admin", &admin.AdminController{}, "POST:Store")         // 添加
	beego.Router("/admin/system/admin", &admin.AdminController{}, "GET:List")           // 列表
	beego.Router("/admin/system/admin/delete", &admin.AdminController{}, "POST:Delete") // 删除
	beego.Router("/admin/system/admin", &admin.AdminController{}, "PUT:Update")         // 修改
	beego.Router("/admin/system/admin/:id", &admin.AdminController{}, "GET:Find")       // 查看
	beego.Router("/admin/system/admin/role", &admin.AdminController{}, "GET:RoleList")  // 角色选项数据

	// 文件分组
	beego.Router("/admin/file-library/group", &admin.FileGroupController{}, "POST:Store")         // 添加
	beego.Router("/admin/file-library/group", &admin.FileGroupController{}, "GET:List")           // 列表
	beego.Router("/admin/file-library/group/delete", &admin.FileGroupController{}, "POST:Delete") // 删除
	beego.Router("/admin/file-library/group", &admin.FileGroupController{}, "PUT:Update")         // 修改
	beego.Router("/admin/file-library/group/:id", &admin.FileGroupController{}, "GET:Find")       // 查看

	// 文件管理
	beego.Router("/admin/file-library/upload", &admin.FileController{}, "POST:Upload") // 上传
	beego.Router("/admin/file-library", &admin.FileController{}, "GET:List")           // 列表
}
